﻿using System;
using System.Globalization;
using System.Text;
using System.Windows.Data;

namespace HandyControlDemo.Tools.Converter;

public class StringRepeatConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        if (value is string strValue)
        {
            var builder = new StringBuilder();
            int num;
            if (parameter is string numStr)
            {
                if (!int.TryParse(numStr, out num))
                {
                    return strValue;
                }
            }
            else if (parameter is int intValue)
            {
                num = intValue;
            }
            else
            {
                return strValue;
            }
            for (var i = 0; i < num; i++)
            {
                builder.Append(strValue);
            }
            return builder.ToString();
        }
        return string.Empty;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotSupportedException();
    }
}
